package nz.ac.massey.doi_information_extractor.parser;

import java.io.IOException;
import java.util.concurrent.Callable;

import nz.ac.massey.doi_information_extractor.data.Publication;

public interface PluginInterface extends Callable<Publication>{

	/**
	 * Creates a publication object based on the given DOI and returns it
	 * @param doi The DOI to find information for
	 * @throws PublicationNotFoundException Thrown if no information can be found for the DOI
	 * @throws IOException Thrown if error connecting to the Internet
	 */
	void getInformationFromDOI(String doi) throws PublicationNotFoundException,IOException;

}
